/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.proyecto.datos;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;

/**
 *
 * @author mario
 */
public class EntityHorarioMat implements OperacionesDB {
    
    private int materia;
    private int horario;
    private int catedratico;
    private int grupo;
    private int id_horario_materia;
    private String entHorario;
    private String entCatedratico;
    private String entCatedraticoApellido;
    private String entMateria;
    
   

    public EntityHorarioMat() {
    }

    public EntityHorarioMat(int id_horario_materia,String entMateria, String entHorario, String entCatedratico,String entCatedraticoApellido,int grupo) {
        this.id_horario_materia=id_horario_materia;
        this.entMateria = entMateria;
        this.entHorario = entHorario;
        this.entCatedratico = entCatedratico;
        this.grupo = grupo;
        this.entCatedraticoApellido=entCatedraticoApellido;
        
    }

    @Override
    public String EjecutarComando(String cadenaSQL) {
        Connection cn;
        Statement st;
        String msj;
        try {
            ConnDB db = new ConnDB();
            Class.forName(db.getDriver());
            cn = DriverManager.getConnection(db.getCadenaCon(), db.getUsuario(), db.getContrasenna());
            st = cn.createStatement();
            st.execute(cadenaSQL);
            st.close();
            cn.close();
            msj = "Comando ejecutado con exito";
        } catch (Exception ex) {
            msj = "El comando no pudo ser ejecutado";
            System.out.println(ex.toString());
        }
        return msj;
    }

    @Override
    public ArrayList EjecutarConsulta(String cadenaSQL) {
        ArrayList arry = new ArrayList();
        Connection cn;
        Statement st;
        ResultSet rs;

        try {
           ConnDB db = new ConnDB();
            Class.forName(db.getDriver());
            cn = DriverManager.getConnection(db.getCadenaCon(),db.getUsuario(),db.getContrasenna());
            
            st = cn.createStatement();
            rs = st.executeQuery(cadenaSQL);
            rs.beforeFirst();

            while (rs.next()) {
                arry.add(new EntityHorarioMat(rs.getInt("deta.id_detalle_horario_materia"),rs.getString("mate.cod_asignatura"),rs.getString("hora.horario"),rs.getString("cate.nombre"),rs.getString("cate.apellido"),rs.getInt("grupo.id_grupo")));
            }
            
            rs.close();
            st.close();
            cn.close();
        } catch (Exception ex) {
            arry=null;
            System.out.println(ex.toString());
        }

        return arry;
    }

    public String getEntHorario() {
        return entHorario;
    }

    public void setEntHorario(String entHorario) {
        this.entHorario = entHorario;
    }

    public String getEntCatedratico() {
        return entCatedratico;
    }

    public void setEntCatedratico(String entCatedratico) {
        this.entCatedratico = entCatedratico;
    }

    public String getEntMateria() {
        return entMateria;
    }

    public void setEntMateria(String entMateria) {
        this.entMateria = entMateria;
    }

    public int getGrupo() {
        return grupo;
    }

    public void setGrupo(int grupo) {
        this.grupo = grupo;
    }

    public int getId_horario_materia() {
        return id_horario_materia;
    }

    public void setId_horario_materia(int id_horario_materia) {
        this.id_horario_materia = id_horario_materia;
    }

    public String getEntCatedraticoApellido() {
        return entCatedraticoApellido;
    }

    public void setEntCatedraticoApellido(String entCatedraticoApellido) {
        this.entCatedraticoApellido = entCatedraticoApellido;
    }

    

    
}
